bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Wed, 12 Feb 2025 13:26:20 +0000 (14:26 +0100)
committerSylvestre Ledru <sylvestre@debian.org>
Wed, 12 Feb 2025 13:26:20 +0000 (14:26 +0100)
commite2dc7f82c126191536542ad8bbbb8cc20fb69859
tree70cab1b94cef89d06255e2d0685716260e7803f2
parent49eb555b325b9f2bd1ff5feea7043e39871a4684
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h